1、文件映射
	将文件映射到用户空间（如果是设备文件则需要驱动层提供支持）
	start: 期望的虚拟地址起始值，为NULL表示系统自动分配
	length: 期望映射的大小
	prot: 映射区域的保护方式
		PROT_EXEC 映射区域可被执行
		PROT_READ 映射区域可被读取
		PROT_WRITE 映射区域可被写入
		PROT_NONE 映射区域不能存取
	flagsP: 映射对象的类型
		MAP_FIXED 指定映射起始地址
		MAP_SHARED 与其它所有映射这个对象的进程共享映射空间，对共享区的写入，相当于输出到文件
		MAP_PRIVATE 建立一个写入时拷贝的私有映射，内存区域的写入不会影响到原文件
		MAP_NORESERVE 不要为这个映射保留交换空间
		MAP_LOCKED 锁定映射区的页面
		MAP_GROWSDOWN 用于堆栈，告诉内核VM系统，映射区可以向下扩展
	fd: 有效的文件描述
	offset: 被映射对象内容的起点
	成功返回被映射区的指针,失败返回MAP_FAILED[(void *)-1]
	void* mmap(void* start, size_t length, int prot, int flags, int fd, off_t offset);
2、取消映射
	取消mmap的映射
	addr: mmap返回的虚拟地址
	length: 映射的长度
	成功返回0，失败返回-1
	int munmap(void *addr, size_t length);
3、强制同步
	对映射内存的写入不会立即更新内存，msync可将映射内存区域的数据立即更新到文件
	addr: mmap映射后的虚拟地址
	length: 要同步的内存区域的大小
	flags：同步方式
		MS_ASYNC 尽快写入
		MS_SYNC 立即写入
		MS_INVALIDATE 内核自行决定是否写入
	int msync(void *addr, size_t length, int flags);
